<template>
  <component :is="comp.tabs" :push="val" />
</template>
<script>
import {
  WaveSawTool,
  StairsUp,
  Trophy,
  BoxMultiple,
  BuildingCastle,
  Crown,
  ClipboardList,
} from "@vicons/tabler";
import { Category, AirlineManageGates } from "@vicons/carbon";
import { CrownTwotone } from "@vicons/antd";
import { cfg } from "@/cfg/cfg.js";
export default defineComponent({
  setup() {
    const comp = {
      tabs: defineAsyncComponent(() => import(`@/comp/nav_tabs.vue`)),
      damage_day1: defineAsyncComponent(() => import(`./Rankings/damage_day1.vue`)),
      damage_avg_rank: defineAsyncComponent(() =>
        import(`./Rankings/damage_avg_rank.vue`)
      ),
      damage_avg_rank_day: defineAsyncComponent(() =>
        import(`./Rankings/damage_avg_rank_day.vue`)
      ),
      damage_rank: defineAsyncComponent(() => import(`./Rankings/damage_rank.vue`)),
      team_rank: defineAsyncComponent(() => import(`./Rankings/team_rank.vue`)),
      guild_rank: defineAsyncComponent(() => import(`./Rankings/_guild_rank.vue`)),
      role_rank: defineAsyncComponent(() => import(`./Rankings/role_rank.vue`)),
    };

    let val = {
      tab: [
        {
          icon: StairsUp,
          comp: comp.damage_avg_rank_day,
          title: `史高排名`,
          ck: `damage_avg_rank_day`,
        },
        {
          icon: WaveSawTool,
          comp: comp.damage_avg_rank,
          title: `均伤排名`,
          ck: `damage_avg_rank`,
        },
        {
          icon: CrownTwotone,
          comp: comp.damage_rank,
          title: `总伤排名`,
          ck: `damage_rank`,
        },
        {
          icon: ClipboardList,
          comp: comp.team_rank,
          title: `刀型统计`,
          ck: `team_rank`,
        },
        {
          icon: Category,
          comp: comp.guild_rank,
          title: `公会排名`,
          ck: `guild_rank`,
        },
        {
          icon: AirlineManageGates,
          comp: comp.role_rank,
          title: `上岗统计`,
          ck: `role_rank`,
        },
      ],
    };

    return {
      comp,
      val,
    };
  },
});
</script>
